import http from '@/utils/httpRequest'

/** 查询物资类型管理列表**/
export function checkmaterialList (query) {
  return http({
    url: '/api/material/goods/list',
    method: 'get',
    params: query
  })
}

/** 新增物资类型管理 */
export function newaddMaterial (data) {
  return http({
    url: '/api/material/goods',
    method: 'post',
    data: data
  })
}

/** 获取物资类型管理详细信息 */
export function checkMaterial (query) {
  return http({
    url: '/api/material/goods/' + query,
    method: 'get'
  })
}

/** 查询物资类型管理下拉Select**/
export function typelistMaterial (params) {
  return http({
    url: '/api/material/goods/treeselect',
    method: 'get',
    params
  })
}

/** 修改物资类型管理**/
export function reviseMaterial (data) {
  return http({
    url: '/api/material/goods',
    method: 'put',
    data: data
  })
}

/**
 * 新增设备
 * @param data
 */
export function addFacility (data) {
  return http({
    url: '/api/material/facility/add',
    method: 'post',
    data: data
  })
}

/**
 * 更新设备信息
 * @param data
 */
export function updateFacility (data) {
  return http({
    url: '/api/material/facility',
    method: 'put',
    data: data
  })
}

/**
 * 删除设备
 * @param ids
 */
export function deleteFacility (ids) {
  return http({
    url: '/api/material/facility/' + ids,
    method: 'delete'
  })
}

/**
 * 获取指定地块未绑定设备
 */
export function queryEditBindingMass (landId, name, type) {
  let queryUrl = '/api/material/facility/unBindFacilityList?massId=' + landId
  if (name && name != null && name != '') {
    queryUrl += '&name=' + name
  }
  if (type && type != null && type != '') {
    queryUrl += '&type=' + type
  }
  return http({
    url: queryUrl,
    method: 'get'
  })
}

/**
 * 绑定设备
 */
export function editBindingMass (landId, id) {
  return http({
    url: '/api/material/facility/editBindingMassif/' + landId + '/' + id,
    method: 'get'
  })
}

/**
 * 解绑设备
 */
export function editUnBindingMass (landId, id) {
  return http({
    url: '/api/material/facility/editUnBindingMassif/' + landId + '/' + id,
    method: 'get'
  })
}

/**
 * 获取设备列表
 * @param name
 * @param type
 */
export function queryFacilityList (name, type, pageSize = 10, pageNum = 1, landId = '') {
  let queryUrl = '/api/material/facility/list?pageSize=' + pageSize + '&pageNum=' + pageNum
  if (name && name != null && name != '') {
    queryUrl += '&name=' + name
  }
  if (type && type != null && type != '') {
    queryUrl += '&type=' + type
  }
  if (landId != '') {
    queryUrl += '&massId=' + landId + ''
  }
  return http({
    url: queryUrl,
    method: 'get'
  })
}

/** 删除物资类型管理**/
export function deleteMaterial (query) {
  return http({
    url: '/api/material/goods/' + query,
    method: 'delete'
  })
}

/** 查询地块地图信息**/
export function getLandProperties () {
  return http({
    url: '/api/affairs/landController/test',
    method: 'get'
  })
}

/** 查询设备类型信息**/
export function iotTypeList () {
  return http({
    url: '/api/material/facility/listType',
    method: 'get'
  })
}

/** 农事记录 - 获取农机库存**/
// 入参：==================
// isWarn：是否为预警信息:0=否，1=是） 整型 必填
// machineryType：农机分类ID 整型 非必填
// machineryName：检索信息 字符串 非必填
// 出参（分页列表）：==================
// id：库存ID 字符串
// tenantId：租户ID 字符串
// machineryId：农机目录ID 字符串
// price：单价（单位：分） 整型
// qty：当前库存数量 整型
// machineryName：农机名称 字符串
// machineryTypeName：农机分类名称 字符串
// model：型号 字符串
// brand：品牌 字符串
// unit：计数单位 字符串
// supplier：生产商 字符串
// picUrl：照片地址 字符串
// limitDown：告警下限 整型
export function machineryKCList () {
  return http({
    url: '/api/material/stock/machinery/kc/list',
    method: 'get'
  })
}

/** 农事记录 - 获取农资库存**/
// 入参：==================
// isWarn：是否为预警信息（0=否，1=是） 整型 必填
// goodsType：农资分类ID 整型 非必填
// goodsName：检索信息 字符串 非必填
// 出参（分页列表）：==================
// id：库存ID 字符串
// tenantId：租户ID 字符串
// goodsId：农资目录ID 字符串
// price：进价（单位：分） 整型
// qty：当前库存数量 整型
// goodsName：农资名称 字符串
// goodsType：农资分类ID 整型
// goodsTypeName：农资分类名称 字符串
// model：型号 字符串
// brand：品牌 字符串
// specs：规格 整型
// meteringUnit：计量单位 字符串
// unit：计数单位 字符串
// period： 保质期 整型
// periodUnit：保质期单位 字符串
// supplier：生产商 字符串
// picUrl：照片地址 字符串
// limitDown：告警下限 整型
export function goodsKCList () {
  return http({
    url: '/api/material/stock/goods/kc/list',
    method: 'get'
  })
}
